package com.zwh.algorithm.leetcode.simple;

import java.util.Arrays;

public class LeetCode2600 {
    /**
     * 2023-07-05 K 件物品的最大和
     * todo 袋子中装有一些物品，每个物品上都标记着数字 1 、0 或 -1 。
     * todo 给你四个非负整数 numOnes 、numZeros 、numNegOnes 和 k 。
     * todo 袋子最初包含：
     * todo numOnes 件标记为 1 的物品。
     * todo numZeroes 件标记为 0 的物品。
     * todo numNegOnes 件标记为 -1 的物品。
     * todo 现计划从这些物品中恰好选出 k 件物品。返回所有可行方案中，物品上所标记数字之和的最大值。
     * @param args
     */
    public static void main(String[] args) {
        System.out.println(kItemsWithMaximumSum(3,2,0,2));
        System.out.println(kItemsWithMaximumSum(3,2,0,4));
        System.out.println(kItemsWithMaximumSum(3,2,5,8));
    }
    /**
     *
     */
    public static int kItemsWithMaximumSum(int numOnes, int numZeros, int numNegOnes, int k){
        if (numOnes>=k){
            return k;
        } else if (k <= numOnes + numZeros) {
            return numOnes;
        } else {
            return numOnes - (k - numOnes - numZeros);
        }
    }

}
